# -*- coding: utf-8 -*-
import os
import sys
import time
import threading
"""
达到的目标
1. 通过web接口启动线程，监控线程，获取线程运行状态，删除线程(线程管理)
"""
if __name__ == '__main__':
    print(time.time())
    print(sys.getwindowsversion())

"""

设计一个Python 进程中多线程(考虑到GIL)

1.Python语言和GIL没有半毛钱关系，仅仅是由于历史原因在CPython解释器中难以移除GIL
2.GIL：全局解释器锁，每个线程在执行的过程都需要先获取GIL，确保同一时刻仅有一个线程执行代码，所以python的线程无法利用多核。
3.线程在I/O操作等可能引起阻塞的system call之前，可以暂时释放GIL，执行完毕后重新获取GIL，python3.2以后使用时间片来切换线程，
时间阈值是0.005秒，而python3.2之前是使用opcode执行的数量(tick=100)来切换的。
4.Python的多线程在多核CPU上，只对于IO密集型计算产生正面效果；而当有至少有一个CPU密集型线程存在，那么多线程效率会由于GIL而大幅下降
"""